import sympy as sy
import numpy as np
import matplotlib.pyplot as plt


#Faça o gráfico da lei do movimento 𝑦 𝑡 de 0 a 4.0 s.
#lei do movimento x(t) = x0 + v0*t + 1/2*ax*t^2
g = 9.8
v0 = 0
v_T = 6.80

t = sy.symbols('t')
y_expr = (v_T**2 / g) * sy.log(sy.cosh(g*t/v_T))

y_lam = sy.lambdify(t, y_expr, "numpy")

t_vals = np.linspace(0, 4, 100)
y_vals = y_lam(t_vals)

plt.plot(t_vals, y_vals)
plt.xlabel('tempo (s)')
plt.ylabel('posição (m)')
plt.title('Movimento do Volante de Badmington')
plt.grid()
plt.show()


#Determine a velocidade instantânea em função do tempo, usando cálculo simbólico (sympy). 

v_expr = sy.diff(y_expr, t)
v_expr_simpl = sy.simplify(v_expr)
print("Expressão de v(t):", v_expr_simpl)

v_lam = sy.lambdify(t, v_expr_simpl, "numpy")
v_vals = v_lam(t_vals)

plt.plot(t_vals, v_vals)
plt.xlabel('tempo (s)')
plt.ylabel('velocidade (m/s)')
plt.title('Velocidade do Volante de Badmington')
plt.grid()
plt.show()



# Determine a aceleração instantânea em função do tempo, usando cálculo simbólico. 


a_expr = sy.diff(v_expr, t)
a_expr_simpl = sy.simplify(a_expr)
print("Expressão de a(t):", a_expr_simpl)

a_lam = sy.lambdify(t, a_expr_simpl, "numpy")
a_vals = a_lam(t_vals)

plt.plot(t_vals, a_vals)
plt.xlabel('tempo (s)')
plt.ylabel('aceleração (m/s^2)')
plt.title('Aceleração do Volante de Badmington')
plt.grid()
plt.show()